using System.Collections.Generic;
using System.Runtime.Serialization;
using Newtonsoft.Json;

namespace Common.ServiceResponse.ValueObjects.Facebook
{
    [DataContract]
    public class WallPost
    {
        [DataMember]
        [JsonProperty(PropertyName = "id")]
        public string WallPostId { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "from")]
        public BriefObjectDescription PostedFrom { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "story")]
        public string Story { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "story_tags")]
        public Dictionary<int, List<StoryTag>> StoryTags;

        [DataMember]
        [JsonProperty(PropertyName = "picture")]
        public string Picture { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "link")]
        public string Link { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "name")]
        public string Name { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "caption")]
        public string Caption { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "description")]
        public string Description { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "icon")]
        public string Icon { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "type")]
        public string Type { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "created_time")]
        public string CreatedTyme { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "updated_time")]
        public string UpdatedTime { get; set; }

        [DataMember]
        [JsonProperty(PropertyName = "likes")]
        public Likes LikesPeople { get; set; }
    }
}
